Шум Перлина
Perlin noise (Шум Перлина, также иногда Классический шум Перлина) — математический алгоритм по генерированию процедурной текстуры псевдо-случайным методом. Используется в компьютерной графике для увеличения реализма или графической сложности поверхности геометрических объектов. Также может использоваться для генерации эффектов дыма, тумана и т. д.
Шум Перлина — это градиентный шум, состоящий из набора псевдослучайных единичных векторов (направлений градиента), расположенных в определенных точках пространства и интерполированных функцией сглаживания между этими точками. Для генерации шума Перлина в одномерном пространстве необходимо для каждой точки этого пространства вычислить значение шумовой функции, используя направление градиента (или наклон) в указанной точке.
Функция «Perlin noise» проводит генерацию текстур методом генерации псевдослучайных чисел, однако все визуальные детали текстуры имеют одинаковый размер. Это свойство делает шум Перлина легко управляемым; множества масштабированных копий шума Перлина могут быть вставлеными в математические выражения для создания самых разнообразных процедурных текстур.
Алгоритм шума Перлина можно масштабировать в одно-, двух- и трёхмерном виде. Более того, в алгоритм можно ввести четвёртое временно́е измерение, позволяя алгоритму динамически изменять текстуры во времени.
Шум Перлина создан Кеном Перлином в 1983 году и впоследствии был назван в честь своего создателя. Перлин создал алгоритм, работая в Mathematical Applications Group, Inc.[англ.]. В 1997 году Кен Перлин получил награду Academy Award for Technical Achievement[англ.] от Американской Академии кинематографических искусств и наук за вклад в создание фильма «Трон» (1982).[1]
Шум Перлина широко используется в двухмерной и трёхмерной компьютерной графике для создания таких визуальных эффектов, как дым, облака, туман, огонь и т. д. Он также очень часто используется как простая текстура, покрывающая геометрическую модель. В отличие от растровых текстур, шум Перлина является процедурной текстурой, и поэтому он не занимает память, но, вместе с тем, исполнение алгоритма требует неких вычислительных ресурсов. Использование шума Перлина очень распространено в демосцене, участники которой используют его в демках. Также Шум Перлина используется в разработке игр жанра "песочница" для генерации случайного ландшафта, как это делал Notch в ранних версиях Minecraft.[2][неавторитетный источник]
Примечания
[править | править код]- ↑ Kerman, Phillip. Macromedia Flash 8 @work: Projects and Techniques to Get the Job Done. Sams Publishing. 2006.
- ↑ Noise generator (англ.). Minecraft Wiki. Дата обращения: 31 июля 2023. Архивировано 31 июля 2023 года.
См. также
[править | править код]Ссылки
[править | править код]Англоязычные источники
- Ken Perlin. MAKING NOISE (англ.). noisemachine.com. Дата обращения: 11 декабря 2009. Архивировано из оригинала 3 марта 2016 года.
- Simon Green. Chapter 26. Implementing Improved Perlin Noise (англ.). nVidia GPU Gems 2. Дата обращения: 11 декабря 2009. Архивировано из оригинала 4 октября 2008 года.
- Icigo Quilez. advanced perlin noise (англ.). iquilezles.org (2008). Дата обращения: 11 декабря 2009. Архивировано из оригинала 6 августа 2010 года.
- Matt Zucker. The Perlin noise math FAQ (англ.) (февраль 2001). Дата обращения: 11 декабря 2009. Архивировано 6 июля 2007 года.
- Хьюго Элиас. Perlin Noise (англ.). freespace.virgin.net. Дата обращения: 11 декабря 2009. Архивировано из оригинала 24 июля 2008 года.
Русскоязычные источники
- Волошин Дмитрий aka WDW. Реализация процедурных текстур методом Шума Перлина 2. GameDev.ru (18 января 2004). Дата обращения: 11 декабря 2009. Архивировано из оригинала 29 августа 2007 года. В этой работе представлен шум, в котором в узлах сетки задаются сами значения, а не градиенты. Это не шум Перлина.
- Классический шум Перлина (Perlin noise) и Симплекс шум (Simplex noise) . Wonderville Engine Blog (27 августа 2009). Дата обращения: 11 декабря 2009. Архивировано из оригинала 6 февраля 2013 года.
- Шум Перлина (Perlin noise) . Wonderville Engine Blog (23 мая 2009). Дата обращения: 11 декабря 2009. Архивировано из оригинала 31 октября 2011 года.
- shosh. Шум Перлина . Astrocluster (30 сентября 2004). Дата обращения: 11 декабря 2009.